/**
  ******************************************************************************
  * @file    Mux_control.c
  * @author  Dynapack ADT, Hsinmo
  * @version V1.0.0
  * @date    3-April-2013
  * @brief   Mux_control setting
  ******************************************************************************
  * @attention
  *
  * DESCRIPTION....
  *
  * <h2><center>&copy; COPYRIGHT 2013 Dynapack</center></h2>
  ******************************************************************************
  */

//==============================================================================
// Includes
//==============================================================================
#include "inc/hw_memmap.h"

#include "gpio.h"
//#include "ucs.h"
#include "MCU_Devices.h"
//==============================================================================
// Global/Extern variables
//==============================================================================
//==============================================================================
// Extern functions
//==============================================================================
//==============================================================================
// Private typedef
//==============================================================================
//==============================================================================
// Private define
//==============================================================================

#define COMMUNICATION_MUX_PORT              GPIO_PORT_P2
#define COMMUNICATION_MUX_A0_PIN            GPIO_PIN4

//==============================================================================
// Private macro
//==============================================================================
//==============================================================================
// Private Enum
//==============================================================================

//==============================================================================
// Private variables
//==============================================================================

//==============================================================================
// Private function prototypes
//==============================================================================

//==============================================================================
// Private functions
//==============================================================================

void  _Device_Commun_MUX_Init(void){
    //set as  output  pins
    GPIO_setAsOutputPin( COMMUNICATION_MUX_PORT,COMMUNICATION_MUX_A0_PIN );
    GPIO_setOutputLowOnPin( COMMUNICATION_MUX_PORT, COMMUNICATION_MUX_A0_PIN );
}

void _Device_Set_Commun_Mux_Channel(Communication_Mux_Channels channel){

    switch(channel){
        case Comm_UART_Mux_Ch:
            GPIO_setOutputHighOnPin( COMMUNICATION_MUX_PORT, COMMUNICATION_MUX_A0_PIN );
            break;
        case Comm_RS485_Mux_Ch:
        default:
            GPIO_setOutputLowOnPin( COMMUNICATION_MUX_PORT, COMMUNICATION_MUX_A0_PIN );
            break;
    }
}



